export default {
    namespaced: true,
    state: {
        // 用来表示Toast(登录提示)的状态
        isShowToast: false,
        // 登录提示文本
        msg: "",
        // type表示3种状态：成功(success),警告(warn),失败(fail)
        type: "",

    },
    getters: {
    },
    mutations: {
        // 修改isShowToast的值
        chanIsShowToast(state, payload) {
            state.isShowToast = payload.isShow;
            state.msg = payload.msg;
            state.type = payload.type;
        }
    },
    actions: {
        asyncChanIsShowToast(state, payload) {
            state.commit("chanIsShowToast", {
                isShow: true,
                msg: payload.msg,
                type: payload.type
            })
            setTimeout(() => {
                state.commit("chanIsShowToast", {
                    isShow: false,
                    msg: payload.msg,
                    type: payload.type
                })
            },1500)
        }
    }
}
// 封装Toast组件总结
// 结构样式
// 显示和隐藏的变量存在Vuex中
// 过渡效果(进场离场)
// msg和type的处理(toast 文字和图标是的处理)
// 定时器,隐藏toast组件
// 定时器优化--抽取定时器到actions方法中，让调用更加简便
